/**
 * Represents Tech level
 */
public enum Tech {
	PREAGRICULTURE, AGRICULTURE, MEDIEVAL,
	RENAISSANCE, EARLYINDUSTRIAL, INDUSTRIAL,
	POSTINDUSTRIAL, HITECH;
	
	/** for TWO **/
	private static final int TWO = 2;
	
	/** for THREE **/
	private static final int THREE = 3;
	
	/** for FOUR **/
	private static final int FOUR = 4;
	
	/** for FIVE **/
	private static final int FIVE = 5;

	/** for SIX **/
	private static final int SIX = 6;
	
	/** for SEVEN **/
	private static final int SEVEN = 7;
	
	/**
	 * To getNext level of technology skills.
	 * 
	 * @return next current Tech value
	 */
	public Tech getNext() {
		return this.ordinal() < Tech.values().length - 1 ?
				Tech.values()[this.ordinal() + 1] : this;
	}
	
	/**
	 * To show up appropriate message up to this.ordinal value.
	 * @return current tech level
	 */
	public String toString() {
		switch (this.ordinal()) {
		case 0:
			return "Pre-Agriculture";
		case 1:
			return "Agriculture";
		case TWO:
			return "Medieval";
		case THREE:
			return "Renaissance";
		case FOUR:
			return "Early Industrial";
		case FIVE:
			return "Industrial";
		case SIX:
			return "Post-Industrial";
		case SEVEN:
			return "Hi-Tech";
		default:
			break;
		}
		return null;
	}
}
